<template>
  <v-table :searchFlag="false" :details="false" :pageSize="pageSize" :page="page" :tableConfig="infoColumns" :tableData="tableData" :total="total" @findData="getTableData" height="360px"
    @getTableData="getTableData" @searhData="setSearhData" @selectData="setSelectData" @upData="getTableData" ref="table"></v-table>
</template>

<script>
import table from 'commons/Table'
import baseMixin from '@/mixins/BaseMixin'
import { infoColumns } from './../../data'

export default {
  name: 'Table',
  mixins: [baseMixin],
  props: {
    data: {
      type: Object
    }
  },
  data() {
    return {
      infoColumns,
      tableData: [],
      pageSize: 10,
      page: 1,
      total: 10,
      searhData: {}
    }
  },
  methods: {
    //获取table数据
    async getTableData(page, data) {
      try {
        let res = await this.$api.get(
          `/roleasuser/${this.data.argument.id}/${page}`
        )
          this.loading = false
          this.tableData = res.page.list
          this.page = res.page.curpage
          this.pageSize = res.page.pageSize
          this.total = res.page.total
      } catch (e) {
        this.$message.error(e)
      }
    },
    //搜索值
    setSearhData(data, up) {
      if (!up) {
        this.searhData = data
      } else {
        this.searhData = data
        this.getTableData(1, this.searhData)
      }
    },
    //选中的数据
    setSelectData(data) {
      this.$parent.setSelectData(data)
    }
  },
  mounted() {
    this.getTableData(1, {})
  },
  components: {
    'v-table': table
  }
}
</script>

<style scoped>
</style>
